package com.ruoyi.message.manage.model.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

public class ManageMessageSendRecordVo {

    @Data
    @ApiModel(value = "消息发送记录通用Vo")
    public static class CommonVo implements Serializable {

        /**
         * ID
         */
        @ApiModelProperty(value = "ID")
        private Long id;

        /**
         * 消息id
         */
        @Excel(name = "消息id")
        @ApiModelProperty(value = "消息id")
        private String messageId;

        /**
         * 项目名
         */
        @Excel(name = "项目名")
        @ApiModelProperty(value = "项目名")
        private String projectName;

        /**
         * 语种
         */
        @Excel(name = "语种")
        @ApiModelProperty(value = "语种")
        private String languageCode;

        /**
         * 地区代码
         */
        @Excel(name = "地区代码")
        @ApiModelProperty(value = "地区代码")
        private String areaCode;

        /**
         * 接收方
         */
        @Excel(name = "接收方")
        @ApiModelProperty(value = "接收方")
        private String receiver;

        /**
         * 发送方
         */
        @Excel(name = "发送方")
        @ApiModelProperty(value = "发送方")
        private String sender;

        /**
         * 消息代码
         */
        @Excel(name = "消息代码")
        @ApiModelProperty(value = "消息代码")
        private String code;

        /**
         * 消息内容
         */
        @Excel(name = "消息内容")
        @ApiModelProperty(value = "消息内容")
        private String content;

        /**
         * 类型
         */
        @Excel(name = "类型")
        @ApiModelProperty(value = "类型")
        private String type;

        /**
         * 渠道
         */
        @Excel(name = "渠道")
        @ApiModelProperty(value = "渠道")
        private String channel;


        /**
         * 发送状态(sendOk:发送成功|sendFail:发送失败)
         */
        @Excel(name = "发送状态")
        @ApiModelProperty(value = "发送状态")
        private String status;

        /**
         * 发送时间
         */
        @Excel(name = "发送时间")
        @ApiModelProperty(value = "发送时间")
        @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
        private Date createTime;

    }

}
